package cn.zxy.mapper;

import cn.zxy.model.Card;
import cn.zxy.model.Person;
import org.apache.ibatis.annotations.One;
import org.apache.ibatis.annotations.Result;
import org.apache.ibatis.annotations.Results;
import org.apache.ibatis.annotations.Select;

import java.util.List;

public interface CardMapper {

    @Select("select * from card")
    //数据库和实体对应关系
    //Results 指定的是 resultMap
    //@Result 指定的是 id和result
    //javaType 在注解里面需要是类对象
    //one = @One 一对一固定模式
    @Results({
            @Result(column = "id",property = "id"),
            @Result(column = "number",property = "number"),
            @Result(
                    column = "pid",//根据pid查询出card表里面的数据
                    property = "p",//被包含的对象属性名
                    javaType = Person.class,//实际返回值类型

                    //one = @One 是一对一的注解模式  select属性，指的是调用哪个接口
                    one = @One(select = "cn.zxy.mapper.PersonMapper.findById")

            )
    })

    public List<Card> findAll();




}
